#pragma once

class IAudio
{
public:
	virtual ~IAudio(void);
	virtual void Initialize(void) = 0;
	virtual void OpenStream(void *options) = 0;
	virtual void CloseStream() = 0;
	virtual void StartStream() = 0;
	virtual void StopStream() = 0;
	virtual void Read(void *buffer, unsigned int frame_per_buffer) = 0;
	virtual void Write(void *buffer, unsigned int frame_per_buffer) = 0;
	virtual void Terminate(void) = 0;
};